<?php
include_once 'Conect.php';
/**
 * CLASE GENERAL DE PARTIDO
 *
 * Clase que abstrae los partidos que se manejan en el sistema.
 * @author CLOCK PROGRAMMING
 * @version 1.0
 * @package Modelo
 */

class Partido
{



	/**
	 * Identificador del partido
	 * @access public
	 * @var integer
	 * @name $Id
	 */

	public  $Id;
	/**
	 * Fecha  cuando se juega el partido
	 * @access public
	 * @var DateTime
	 * @name $fecha
	 */

	public  $fecha;
	/**
	 * Goles del equipo 1.
	 * @access public
	 * @var integer
	 * @name $golesE1
	 */

	public  $golesE1='';
	/**
	 * Goles del equipo 2.
	 * @access public
	 * @var integer
	 * @name $golesE1
	 */

	public $golesE2='';
	/**
	 * Instancia del equipo1
	 * @access public
	 * @var Equipo
	 * @name $firstvar
	 */

	public $equipo1;

	/**
	 * Instancia del equipo2
	 * @access public
	 * @var Equipo
	 * @name $equipo2
	 */

	public $equipo2;
	/**
	 * Instancia de la clase encargada de realizar la conexion
	 * @access private
	 * @var Conect
	 * @name $conexion
	 */

	private $conexion;

	/**
	 * CONSTRUCTOR DE LA CLASE PARTIDO
	 * @param DateTime $fecha, integer $golesE1 , integer $golesE2,Equipo $equipo1,Equipo $equipo2
	 * @return Partidoclass
	 */



	function __construct($Id)
	{
		$this->Id=$Id;

		$this->conexion=new Conect();// ASOCIAMOS UNA CONEXION A LA BD.

	}
	/**
	 * Método para registrar el resultado de un partido, validando si se jugo o no se ha jugado.
	 * ya se deben encontrar registrados en el sistema.
	 * @param Integer $Idpartido Id del partido, este reside en la instancia del partido  que se este manejando.
	 * @param Integer $golesE1 Id del partido, Los goles del equipo 1 del partido en cuestion.
	 * @param Integer $golesE2  Id del partido,Los goles del equipo 2 del partido en cuestion.
	 * @return Resultado booleano   indicando si se pudo o no ingresar el resultado del partido
	 */
	function registrarResultado($golesE1,$golesE2)
	{
		try
		{			
			// VALIDAMOS QUE EL PARTIDO NO SE HAYA JUGADO
			$consultaPartido="SELECT DISTINCT partido.Id, partido.Fecha , partido.Jugado FROM partido WHERE partido.Id='".$this->Id."'and partido.Jugado='0';";
			$resultado=mysql_query($consultaPartido,$this->conexion-> conectarse());
			if(mysql_num_rows($resultado)!=0)//VALIDAMOS CON EL RESULTADO QUE NO SE HAYA JUGADO
			{

				$consulta="UPDATE  `miscore`.`partido`  set  `GolesE1`='".$golesE1."', `GolesE2`='".$golesE2."', `Jugado`='1' WHERE `Id`='".$this->Id."' ;";
				$guarda=mysql_query($consulta,$this->conexion->conectarse());
				return $guarda;//RETORNAMOS EL RESULTADO DEL PARTIDO.

			}return false;//EL PARTIDOYA SE HA JUGADO, RETORNAMOS FALSE

		}catch (Exception $e)
		{
			echo 'Caught exception: ',  $e->getMessage(), "\n";
			return false;
		}
	}

	/**
	 * Método para Actualizar  el resultado de un partido, validando si se jugo o no se ha jugado.
	 * ya se deben encontrar registrados en el sistema.
	 * @param Integer $Idpartido Id del partido, este reside en la instancia del partido  que se este manejando.
	 * @param Integer $golesE1 Id del partido, Los goles del equipo 1 del partido en cuestion.
	 * @param Integer $golesE2  Id del partido,Los goles del equipo 2 del partido en cuestion.
	 * @return Resultado booleano   indicando si se pudo o no modificar el resultado del partido
	 */
	function modificarResultado($golesE1,$golesE2)
	{
		try
		{
				
			// VALIDAMOS QUE EL PARTIDO NO SE HAYA JUGADO
			$consultaPartido="SELECT DISTINCT partido.Id, partido.Fecha , partido.Jugado FROM partido WHERE partido.Id='".$this->Id."'and partido.Jugado='1';";
			$resultado=mysql_query($consultaPartido,$this->conexion-> conectarse());
			if(mysql_num_rows($resultado)!=0)//VALIDAMOS CON EL RESULTADO QUE  SE HAYA JUGADO
			{

				$consulta="UPDATE  `miscore`.`partido`  set  `GolesE1`='".$golesE1."', `GolesE2`='".$golesE2."' WHERE `Id`='".$this->Id."' ;";
				$guarda=mysql_query($consulta,$this->conexion->conectarse());
				return $guarda;//RETORNAMOS EL RESULTADO DEL PARTIDO.

			}return false;//EL PARTIDOYA NO  SE HA JUGADO, RETORNAMOS FALSE

		}catch (Exception $e)
		{
			echo 'Caught exception: ',  $e->getMessage(), "\n";
			return false;
		}

	}


}